YES 0.463
↳ HASKELL
↳ LR
((liftM2 :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c) :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c) |
import qualified Maybe import qualified Prelude |
|||||
liftM2 :: Monad d => (c -> b -> a) -> d c -> d b -> d a
|
import qualified Monad import qualified Prelude |
\x2→return (f x1 x2)
liftM20 f x1 x2 = return (f x1 x2)
\x1→m2 >>= liftM20 f x1
liftM21 m2 f x1 = m2 >>= liftM20 f x1
↳ HASKELL
↳ LR
↳ HASKELL
↳ BR
((liftM2 :: (b -> c -> a) -> Maybe b -> Maybe c -> Maybe a) :: (b -> c -> a) -> Maybe b -> Maybe c -> Maybe a) |
import qualified Monad import qualified Prelude |
import qualified Maybe import qualified Prelude |
|||||
liftM2 :: Monad a => (d -> b -> c) -> a d -> a b -> a c
|
|||||
|
|||||
|
↳ HASKELL
↳ LR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
((liftM2 :: (a -> c -> b) -> Maybe a -> Maybe c -> Maybe b) :: (a -> c -> b) -> Maybe a -> Maybe c -> Maybe b) |
import qualified Maybe import qualified Prelude |
|||||
liftM2 :: Monad d => (b -> c -> a) -> d b -> d c -> d a
|
|||||
|
|||||
|
import qualified Monad import qualified Prelude |
undefined
| False
= undefined
undefined = undefined1
undefined0 True = undefined
undefined1 = undefined0 False
↳ HASKELL
↳ LR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
(liftM2 :: (c -> a -> b) -> Maybe c -> Maybe a -> Maybe b) |
import qualified Monad import qualified Prelude |
import qualified Maybe import qualified Prelude |
|||||
liftM2 :: Monad c => (b -> a -> d) -> c b -> c a -> c d
|
|||||
|
|||||
|